#!/usr/bin/env node

//Node Cli应用入口文件必须要有这样的文件头
//如果是Linux或者maxOS系统下还需要修改此文件的读写权限为755
//具体就是通过chmod 755 cli.js 实现修改

//脚手架的工作过程
// 1.通过命令交互询问用户问题
// 2.根据用户回答的结果生成文件
const fs=require('fs')
const inquirer =require('inquirer')
const path=require('path')
const ejs=require('ejs')

inquirer.prompt([
    {
        type:'inpit',
        name:'name',
        message:'Project name?'
}
])
.then(answers=>{
    // console.log(answers)
    // 2.根据用户回答的结果生成文件

    //模板目录
    const tmplDir=path.join(__dirname,'templates')
    //目标目录
    const destDir=process.cwd()

    //将模板下面的文件全部转移到目标目录
    fs.readdir(tmplDir,(err,files)=>{
        if(err)throw err
        files.forEach(file=>{//file：当前文件的相对路径
            //通过模板引擎渲染文件
            ejs.renderFile(path.join(tmplDir,file),answers,(err,result)=>{
                if(err)throw err
                //将文件写到目标目录中
                fs.writeFileSync(path.join(destDir,file),result)
            })
        })
    })
})